package com.ming.easyDevelop.service;

import com.ming.easyDevelop.entity.po.Addresses;
import com.ming.easyDevelop.entity.query.AddressesQuery;
import java.util.List;
import com.ming.easyDevelop.entity.vo.PaginationResVo;
public interface AddressesService {
	/**
	 * 根据条件查询列表
	 */
	List<Addresses> findListByParam(AddressesQuery query);

	/**
	 * 根据条件查询数量
	 */
	Long findCountByParam(AddressesQuery query);

	/**
	 * 根据条件分页查询列表
	 */
	PaginationResVo<Addresses> findListByPage(AddressesQuery query);

	/**
	 * 批量新增
	 */
	Long addBatch(List<Addresses> list);

	/**
	 * 新增
	 */
	Long add(Addresses bean);

	/**
	 * 新增
	 */
	Long addOrUpdate(Addresses bean);

	/**
	 * 新增
	 */
	Long addOrUpdateBatch(List<Addresses> list);

	/**
	 * 根据AddressID查询
	 */
	Addresses getByAddressID(Integer AddressID);

	/**
	 * 根据AddressID更新
	 */
	Long updateByAddressID(Addresses bean, Integer AddressID);

	/**
	 * 根据AddressID删除
	 */
	Long deleteByAddressID(Integer AddressID);

	/**
	 * 根据UserIDAndAddressType查询
	 */
	Addresses getByUserIDAndAddressType(Integer UserID, String AddressType);

	/**
	 * 根据UserIDAndAddressType更新
	 */
	Long updateByUserIDAndAddressType(Addresses bean, Integer UserID, String AddressType);

	/**
	 * 根据UserIDAndAddressType删除
	 */
	Long deleteByUserIDAndAddressType(Integer UserID, String AddressType);

}
